#include "widget.h"
#include "ui_widget.h"
#include <QPainter>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
}

Widget::~Widget()
{
    delete ui;
}

void Widget::paintEvent(QPaintEvent *event)
{
    (void) event;
    // 绘图工作就在这里完成
    // 这是定义在栈上的变量，不需要考虑释放的问题
    // 此处指定的 this，不是父对象，而是指定绘制的对象（往什么东西上绘制）
    QPainter painter(this);
    // 画一个线段
    // 初始位置(x1,y1)，终点位置(x2,y2)
    painter.drawLine(20,20,100,100);
    painter.drawLine(20,100,100,100);
    // 起点坐标，终点坐标
    painter.drawLine(QPoint(20,20),QPoint(20,100));

    // 画一个矩形
    // 起点位置(x,y)，宽度+高度
    painter.drawRect(200,200,100,100);

    // 画一个圆
    // 中心位置(x,y),圆的外接矩形的宽度+高度
    painter.drawEllipse(400,400,100,100);
}

